#ifndef _CUDA_COMPUTE_STRUCTURE_TENSOR_H
#define _CUDA_COMPUTE_STRUCTURE_TENSOR_H


#include "../DWMRICore/Fiber.h"

#include <cutil_inline.h>
#include <cuda.h>
#include <cuda_runtime.h>
#include <cuda_runtime_api.h>

#ifndef PARAM_COUNT
#define PARAM_COUNT 33
#endif

#ifndef RESAMPLE
#define RESAMPLE 10
#endif

#define MAX_GPU_COUNT 32
#define THREADS_PER_RUN	32768				/* CUDA */

struct CUDA_Seed {
	float3 pos;
	float3 dir;
};

struct CUDA_Fiber {
	float3 f[MAX_POINTS];
	float3 b[MAX_POINTS];
	int fc;
	int bc;
	CUDA_Seed seed;
};

void Inv33(double *src, double *dst);

#endif